Preference-Matched Multitask Assignment for Group Socialization under Mobile Crowdsensing

Mobile crowdsensing (MCS) has been an emerging sensing paradigm in recent years, which uses a sensing platform for real-time processing to support various services for the Internet of Things (IoT) and promote the development of IoT. As an important component of MCS, how to design task assignment algorithms to cope with the coexistence of multiple concurrent heterogeneous tasks in group-oriented social relationships while satisfying the impact of users’ preferences on heterogeneous multitask assignment and solving the preference matching problem under heterogeneous tasks, is one of the most pressing issues. In this paper, a new algorithm, group-oriented adjustable bidding task assignment (GO-ABTA), is considered to solve the group-oriented bilateral preference-matching problem. First, the initial leaders and their collaborative groups in the social network are selected by group-oriented collaboration, and then the preference assignment of task requesters and users is modeled as a stable preference-matching problem. Then, a tunable bidding task assignment process is completed based on preference matching under budget constraints. Finally, the individual reasonableness, stability, and convergence of the proposed algorithm are demonstrated. The effectiveness of the proposed algorithm and its superiority to other algorithms are verified by simulation results.


Introduction
In recent years, the popularity and rapid development of smart devices (cell phones, tablets, sports bracelets, etc.) and the breakthroughs achieved by smart hardware have led to the integration of numerous powerful perceptrons in end devices, such as AI chips, cameras, microphones, etc. [1]. The Internet of Things (IoT) connects devices and equipment through sensing technology to achieve a leap forward in interconnecting things and objects [2], driving the development of mobile crowdsensing (MCS) under a large-scale sensing network [3]. As the development of MCS advances, researchers have come to acknowledge that it can significantly enhance the current approach of processes such as environmental monitoring and sensing [4,5]. Thus, investigating MCS technology is imperative. Essentially, MCS is a new mobile computing paradigm that combines IoT and perception technologies: from the perception point of view, the mobile crowdsensing network divides the perception task into several subtasks, which are then assigned to a large number of mobile users in the perception area for perception completion [6]. These mobile entities can be human beings utilizing intelligent devices, as demonstrated in this paper, or drones, or a coordination between human beings and drones for perception purposes [7].
The framework of a mobile group intelligence sensing system mainly contains three parts: task requester, user and sensing platform. The platform or allocator assigns the sensing tasks to the participating users for completion, and the data collection is usually uploaded by the users back to the platform and the allocator, who does the integration analysis and statistical processing after collecting the data [8][9][10][11]. Despite the numerous benefits of MCS, the following must be considered to build a sustainable mobile group intelligence sensing system: task assignment, incentive mechanisms, and user privacy and security [12,13]. Current research mainly focuses on either a single objective or the integration of multiple objectives, such as combining incentive mechanisms with privacy protection [14]. This paper particularly concentrates on task allocation.
In mobile group intelligence perception, the conflicting goals of task requesters to maximize the quality of task completion within budget constraints and participants to receive as many rewards as possible lead to a mismatch between task requesters and users and affect their motivation. Most existing studies only consider optimizing system-level goals, ignoring the needs and preferences of individual users. However, in a real mobile crowdsensing environment, maximizing only the perceived quality [15], social welfare [16], minimizing task cost [17] etc., users are not willing to give up their preferences to maximize the system utility. Therefore, task assignment without considering user preferences can lead to user dissatisfaction and affect future user engagement [18]. In addition, most existing studies only focus on recruiting a sufficient number of independent individual users to complete the task or simply clustering independent users based on task preferences [19], without taking into account the relationships among users during the recruitment process, which can impose high communication costs on the task [20]. However, in real-world mobile crowdsensing environments, users are not independent individuals but groups connected through social relationships, and users are more willing to cooperate with social partners, especially in tasks that require privacy sharing. In addition, closer social ties will accomplish collaborative tasks more effectively without incurring significant communication costs [21][22][23][24][25].
To solve the task assignment problem in group social scenarios where users have preferences, a heterogeneous task assignment mechanism under group grouping is described based on stable matching, and user recruitment is accomplished for the MCS system using many-to-many bilateral matching. The main contributions of this paper are summarized as follows.

•
The concept of influence increase is introduced to describe the selection of grouping in the group social relations of the MCS system. When the grouping of users is completed, the influence increase will result in a more even distribution of affected users, thus increasing the diversity of users involved in the task.

•
In order to reduce the cost of user selection, a collaborative group selection algorithm based on leader initialization is proposed to make the cost under user grouping significantly reduced based on group social user relationships.

•
The task assignment problem in MCS systems is described as a bilateral matching problem with social relationships among users. To solve the problem, we propose a group-oriented adjustable bidding task assignment algorithm (GO-ABTA algorithm), which can transform the problem of preferences possessed by users into a distributed many-to-many resource trading problem. In addition, the algorithm ensures the individual rationality of both task and user and achieves the maximum utility of the system. The stability and convergence of the proposed algorithm, as well as its higher effectiveness compared to existing algorithms, are demonstrated through simulation experiments with real datasets, which improve the quality of task services.
The structure and sections of this paper are organized as follows. Section 2 describes the related work, Section 3 presents the system model and problem description, and Sections 4 and 5 explain the proposed algorithm, respectively. Section 6 analyzes the experimental tests and results, and finally, a conclusion is presented in Section 7.

Related Works
The success of task assignment requires the involvement of a large number of users and aims at achieving a good trade-off between task quality and task cost. Inspired by the success of social networks (e.g., Facebook, WeChat, Twitter, etc.) in recent years, several studies [26][27][28][29][30] have proposed task assignment mechanisms that recruit users with the help of social networks. A novel task allocation algorithm is proposed in [26] that distributes sensory tasks fairly to users while using the Social Internet of Things (SIoT) to assess the reputation level of each member of the network. A dynamic task allocation algorithm for social recruiters was proposed in [27] to encourage users on the MCS platform to spread tasks through social networks and use social networks to recruit employees to complete tasks when the number of users is insufficient, while expanding the workforce. Location-based social networks (LBSNs) to obtain crowdfunding data are used in [28] to study the task allocation problem under influence maximization in LBSNs. A social network-based task allocation algorithm for mobile crowdfunding is considered in [29], rewarding users for providing perceptual data and their invitational behavior in mobile user social networks to select users with high perceptual power. Influence propagation on social networks to aid MCS user recruitment is used in [30], where task allocation is targeted to maximize coverage. A subset of users is first selected as the initial task participants, and then users who are influential and able to complete the task are recruited as staff. Most of the above research has focused on the assumption that at least one full candidate group provides enough candidate users to choose from (inconsistent with the real world), without considering the problem of collaborative multigroup task cooperation under the construction of compatible user groups with a large number of reachable users in social networks.
Recently, several works [31][32][33][34] used preference matching to solve the matching problem between task requesters and users, and stable matching theory was used in [31] to obtain satisfactory matches between users and task requesters, with two different stability conditions for user happiness defined. Finally, three efficient and stable task assignment algorithms are proposed and their stability under four different MCS scenarios is discussed. A distributed many-to-many matching model under task budget constraints was described in [32] by being constructed to describe the interaction between a perceptual task and a smartphone user. Then, a stable matching algorithm is designed to assign tasks to users and determine their rewards. Finally, the proposed algorithm is shown to have several desirable properties, including individual plausibility, stability and convergence. The impact of user preferences and the space-time characteristics of the task on the long-term utility of the employee is considered in [33] and a dynamic planning-based task allocation algorithm is proposed to ensure user satisfaction with the task. A task allocation algorithm based on stable matching under budget constraints is presented in [34], and rigorous theoretical analysis and simulation validation are given. Most of the above works focus on the assignment of homogeneous tasks and do not consider the preference-matching problem in the case of heterogeneous tasks.
Therefore, there is an urgent need to study the problem of finding a heterogeneous task assignment that satisfies both the perceived quality preferences of task requesters and the profit preferences of workers under the coordination of different groups in order to accomplish task assignment under group wisdom perception. The intrinsic goal is to find a match such that each of the users is satisfied with their preference assignment, while reducing the communication cost among all recruited users. Therefore, in this paper, we design a stable heterogeneous task assignment algorithm based on stable matching under budget constraints to solve the heterogeneous task assignment problem under group socialization by considering users' preferences and intergroup cooperation.

System Model
This section describes a scene in which an MCS platform publishes multiple heterogeneous tasks. The compliance used in this paper is summarized in Table 1. The platform contains N heterogeneous tasks and M users, and assumes the presence of perceptual resources of type L in the system, i.e., L = {1, 2, . . . , L}. The set of heterogeneous tasks is denoted as T = {t 1 , t 2 , . . . , t N }, S = {s 1 , s 2 , . . . , s M } denotes the set of users involved in the task, and it is assumed that user s i has at most r 0 type of perceptual resources and user s i has perceptual resources denoted as r(s i ) = {1, 2, . . . , r 0 }, r 0 < L. Therefore, it is important to recruit a sufficient number of users to participate in the perception task in order to complete the perception task. However, task requesters usually have a limited budget, which limits the number of recruited participants to represent the task's budget B k t k , i.e., the bids (benefits) of all users who complete the task t k , not exceeding the budget B k . In order for users to obtain nonnegative utility, users s i cannot be paid less than their perceived cost. Therefore, each task requires different perceptual resources, e.g., an environmental awareness task requires air pollutant concentration, while a traffic monitoring task requires the speed and location of a car, and the set of perceptual resources required for the task is denoted by r(t k )t k . Communication costs between the user s i and the group leader s k Q * Completion of tasks by users in task collaboration groups p m Sellers bid at m, relative to the task. w m A group of buyers will send a bid package in round m. SN Non-directional social networks j Perceived quality provided by the user during the execution of the task s i t k F * The set of neighbor nodes of the current group leader Λ S The current cost effectiveness of the user C S The social cost of the user As users under group socialization, the study of interuser relationships in quasi-static scenarios can be obtained from the social network of the undirected social graph, where the social relationships between users are represented in the undirected social network SN = (U, E), where each edge E ij , represents a user s i , with a user s j , with social relationships. Moreover, when users historically perform perceptual tasks, social relations between users can be obtained through cooperative relationships, and the communication cost between users can be calculated as a monotonically increasing function of communication distance [35][36][37]. The communication cost between users affects not only the quality of task cooperation but also the choice of intergroup cooperation; therefore, the intragroup communication cost is defined as the communication cost between the group leader and all group members. Based on the above, different social relationships are organized into different groups G k (group leader is s k ) and each group can perform a subtask, intragroup communication cost is defined as T S k O G k and intergroup communication cost is defined as I G k . The sum of intergroup communication costs for collaborating on a task is defined as: In general, different perceptual tasks running on different smart terminals will obtain different perceptual quality due to the variability of smart terminals in hardware configuration or perceptual location. The perception cost j is represented by the perceptual resources q(i, j, k) provided by the user s i while performing the perceptual task t k , and the perceptual resources provided by the smart terminal for the task denoted by r(i, k) = r(s i ) ∩ r(t k ), then q(i, k) = ∑ j∈r(i,k) q(i, j, k) denotes all the perceptual qualities provided by the user s i while performing the perceptual task t k . The perceptual quality can be quantified by the coverage of the target area, the time to complete the task, etc. For each smart terminal, users may incur different perceptual costs when engaging in different tasks due to the diversity of tasks and the heterogeneity of resource requirements. Using c(i, j, k) to denote the perceived resource cost j contributed by the user s i in performing the perceived task, then t k c(i, k) = ∑ j∈r(i,k) c(i, j, k) denotes the total cost t k corresponding to the user s i in performing the task. In addition, p(i, k) represents the reward obtained by the user s i for participating in the task, while t k p max (i, k) represents the maximum benefit obtained by the user s i from the task t k . The above information is known only to the user and not to other users. In this case, the fairness of the competition is ensured and the privacy of both buyers and sellers is protected to some extent.
The system model takes into account that each user can participate in multiple heterogeneous tasks, as shown in Figure 1. represents the maximum benefit obtained by the user i s from the task k t . The above information is known only to the user and not to other users. In this case, the fairness of the competition is ensured and the privacy of both buyers and sellers is protected to some extent.
The system model takes into account that each user can participate in multiple heterogeneous tasks, as shown in Figure 1.  In addition, an open competition system is considered that allows each user to dynamically adjust the perceived bid after each failed task assignment to compete for more tasks. To capture the interaction between task requestors and users, the model constructs a distributed many-to-many resource transaction model in which task requestors act as buyers of resources and users as sellers of resources. For simplicity, buyers and sellers are used to exchange with tasks or task requesters and users or smart terminals, respectively. After the buyer initiates a demand, the interaction between the buyer and the seller is sequential, as described below.
(1) In each round, each user, as a seller, sends a bid package to interested buyers, which includes the bid and the perceived quality of the executed task. (2) After the buyers collect the bid packages from the sellers, each buyer selects the local best of the temporarily accepted sellers within its budget constraint. Then, the buyer sends its local decision to the selected seller and rejects the other sellers. (3) Upon receipt of the buyer's decision, if the seller is rejected by the buyer, the seller will decide in the next round of trading whether to lower its offer (b). If the seller is accepted by the buyer, its offer remains unchanged in the next round of trading. (4) Continue the above process until all sellers' bid packages are accepted by their inter- In addition, an open competition system is considered that allows each user to dynamically adjust the perceived bid after each failed task assignment to compete for more tasks. To capture the interaction between task requestors and users, the model constructs a distributed many-to-many resource transaction model in which task requestors act as buyers of resources and users as sellers of resources. For simplicity, buyers and sellers are used to exchange with tasks or task requesters and users or smart terminals, respectively. After the buyer initiates a demand, the interaction between the buyer and the seller is sequential, as described below.
(1) In each round, each user, as a seller, sends a bid package to interested buyers, which includes the bid and the perceived quality of the executed task. (2) After the buyers collect the bid packages from the sellers, each buyer selects the local best of the temporarily accepted sellers within its budget constraint. Then, the buyer sends its local decision to the selected seller and rejects the other sellers.
(3) Upon receipt of the buyer's decision, if the seller is rejected by the buyer, the seller will decide in the next round of trading whether to lower its offer (b). If the seller is accepted by the buyer, its offer remains unchanged in the next round of trading. (4) Continue the above process until all sellers' bid packages are accepted by their interested buyers, or all sellers are no longer able to lower their bids.
Based on the above distributed interaction model, the buyer eventually negotiates and completes the transaction with the corresponding seller.
Before the problem is formed, the following variables are first defined.
Buyer t k to Seller s i , also expressed as Seller s i from Buyer t k . r(i, k): Perceptual resources provided by Seller s i to Buyer t k , where r(i, k) ∈ r(s i ).
Use P i = {p(i, k) | ∀t k ∈ T } for the revenue earned by the seller s i for participating in the task, then P = ∪ s i ∈S P i for the revenue earned by all sellers, and P −i = P\P i for the total revenue earned by all sellers except s i sellers.
Defining the utility of buyers and sellers, for each buyer t k ∈ T , the perceived quality is mainly maximized by the recruited sellers w(t k ), however, due to budget constraints, the utility of buyers t k , can be defined as U k T : Thus, the goal of t k is: where Equation (3) indicates that the total revenue of the sellers recruited by the buyer should not exceed the buyer's budget, which ensures the buyer's personal reasonableness. Once a user s i participates in a task t k , the perceptual data required for the task is collected and uploaded t k . It is assumed that each task has a specific AoI [38] (area of interest, AoI), i.e., the area where the task collects perceptual data. The quality of the perceptual data required for the user s i , to provide the task t k , is related to the distance from the user to the task and the performance of the device. It is assumed that the quality of the user in the region to complete the task is only related to the performance of the smart device, while the quality of the data outside the AoI region is lower than that of the person in the region and decreases with increasing distance. Specifically, for any s i ∈ S and t k ∈ T , if user s i is involved in the task t k and user s i is involved in the task t k , then the perceived quality of q(i, j, k) provided by j is defined as: Since each smart device has different sensing and computing capabilities, not all participants can provide the same level of perceptual quality. λ i is the smart device coefficient, which is related to the performance of the device. D i, k is the Euclidean distance between the user and the task, D k is the radius of the AoI region, and D max is the farthest distance to perform the task.
For each seller s i ∈ S, the goal is to maximize the net revenue earned by participating in the task, i.e., the total bids ultimately earned minus the total perceived cost. The user s i , whose utility is denoted by U i S , is represented as follows.
Thus, the goal of s i is: The goal is governed by three equations, where the seller's cost is lower than the seller's bid and lower than the initial bid, which ensures the individual rationality of the user. The user can only participate in the tasks that exist in the system, indicating that the sum of perceptual resources provided by the user should not exceed the perceptual resources they have.
When buyers collect bidding packs, each buyer chooses the temporarily accepted seller under a budget constraint, which is the local optimum. This problem can be described as the 0-1 backpack problem, which is a typical NP − hard, the capacity of the backpack is the budget of the task t k B k , and suppose the task t k recruits n users, then the bid of n users is p k = (p(1, k), p(2, k), . . . , p(n, k)), the perceived quality of n users is q k = (q(1, k), . . . , q(m, k)), and the user's choice is determined by the n metavariable Thus, the 0-1 backpack problem can be expressed as:

P3
: max The essence of solving the 0-1 backpack problem is by solving the variable (x 1 , x 2 , . . . , x n ), while the decision of the variable x i is whether to select a user or not. The 0-1 backpack problem can be solved using dynamic programming (DP). On top of that, it is necessary to ensure that the current user base on the social network can satisfy the requirements of each perceptual task at minimal cost.
Definition 1. Mobile crowdsensing task assignment is a mapping between S and T , where W represents the result of matching users and tasks: the following conditions are satisfied. For any purchase of t k ∈ T , w(t k ) ∈ S or w(t k ) = ∅.

2
For any sale at s i ∈ S, w(s i ) ∈ T or w(s i ) = ∅. 3 For any buyer and seller of < s i , t k >, t k ∈ w(s i ), when and only when s i ∈ w(t k ). 4 For any seller of s i ∈ S, if w(s i ) = ∅, w(s i ) = t k , then t k ∈ w(s i ), and p(i, k) ≥ c(i, k).

5
For any t k ∈ T , if w(t k ) = ∅, then ∑ Condition 3 indicates that in a match, the task and the user are mutually matched; condition 4 indicates that in a feasible match, the user is paid no less than his perceived cost for completing the task, i.e., the user's personal rationality is satisfied; and condition 5 indicates that in a feasible match, the total payoff for the task does not exceed his budget.
In a practical MCS system, task requesters and users are usually rational individuals and thus may discontinue tasks if better options are available to improve their utility. In this case, an effective task assignment mechanism should satisfy certain desirable properties, including individual rationality, fairness, non-wastefulness, and stability [39], defined as follows.

Definition 2. A match between a buyer t k and a seller s i is reasonable if
1 Each seller s i , at w(s i ), to achieve a nonnegative utility, i.e., a nonnegative net profit, when the user's revenue is P Each buyer t k , at w(t k ), to P, to achieve nonnegative utility, i.e., to match the seller.
Personal reasonableness ensures that users are not unwilling to perform the tasks assigned to them; personal reasonableness is a fundamental property of resource transactions, but it is different from the maximum utility that the seller wishes to obtain. For example, obtaining nonnegative utility ensures the seller's personal reasonableness, while achieving maximum utility as defined in Equation (6) is the seller's goal.
To define fairness, this paper introduces the concept of blocking pairs.  The seller s i , when the user is paid P i , prefers the buyer w(s i ) than the buyer set M, when the payoff is P i . That is, the following expression is satisfied.
2 Each buyer in the set M wants to include sellers in the set of matching sellers s i under the payment P i ∪ P −i instead of matching sellers under the payment P, even though it must evict some sellers to make room for sellers s i under the budget constraint. That is, for any buyer t k ∈ M, there exists a set of sellers w (t k ), w (t k ) ∈ w(t k ) to be evicted, resulting in Blocking a match makes the matching result unstable because a seller s i , can be more profitable by matching the buyer set M, instead of the current match set w(s i ). An arbitrary buyer t k ∈ M, can improve its perceived quality by evicting other seller sets, or it can improve its perceived quality by recruiting a seller s i .  The seller s i , when the user is paid P i , prefers the buyer w(s i ) than the buyer set M, when the payoff is sP i . That is, the following expression is satisfied. 2 Each buyer in the set M wants to include the seller s i in the set of matching sellers under the payment P i ∪ P −i instead of matching the current matching seller under the payment P, but does not need to evict any seller. That is, for any buyer t k ∈ M that meets the following conditions The waste pair makes task assignment results unstable because the buyer t k , can recruit another seller s i , within its budget constraints, to increase its utility, and this recruitment can also benefit the seller s i .

Grouping Mechanism
This section describes the grouping mechanism, including group leader initialization and group selection.
Since different social relationships have uncertainty for leaders to choose their neighbors, and different social and communication costs of users in the group will lead to different cost-benefits of the group, in order to improve the effectiveness of leader selection, we select users who share as much information as possible with other users in the group social network in terms of both the sensitivity of users in the social network and the diversity of social network leaders. Moreover, selecting users who are more evenly distributed in the group social network will also result in a more even distribution of affected users, avoiding double counting the same communication and increasing the diversity of affected users.
Using the group leader initialization [40] algorithm, the group leader with the largest increase in influence is iteratively selected and the increase in influence of the candidates added to the set of group leaders is denoted as ∆Φ.
where the influence degree of active users is defined as Φ(s i ) and the increase in influence degree of candidate users added to the leader set L is denoted as ∆Φ, where F * denotes the set of neighborhood points of all users in the leader set L obtained in the previous iteration. New users are continuously added by the group leader initialization algorithm until the number of group leaders reaches a predefined threshold K or the unselected users can no longer increase their influence. Group leaders are iteratively selected and added to L. Specifically, the maximum increase in current influence is calculated and if the current user is able to increase influence, i.e., ∆Φ(s k ) > 0, it is added to L and removed from U. The neighbor nodes of this group leader are added to F * with a predefined threshold of K minus one; otherwise, the user is removed from S. The specific implementation steps of the algorithm are shown in the following Algorithms 1 and 2.

Algorithm 2: Collaborative group selection
Input. T , r j t j ∈ T , F k , c S , I S Output: a group of users G k Step 1: Initialization. The selected group leader needs to find dependent neighbors in the intragroup social network to form a group to complete heterogeneous multitasks in order to achieve good cooperation among users and minimize the communication cost between the group leader and neighbors. First, the group leader s k , selected by the group leader initialization algorithm, is added to G k to calculate the current uncompleted tasks and remove the tasks from T that already satisfy the demand. The unsuitable users are filtered out at, and F k Λ S is computed for the qualified users.
where the cost-effectiveness of the user is defined as the average cost of covering the outstanding tasks, Λ S i is the current cost-effectiveness of the user s i , where C S i denotes the social cost of the user and s i I S iK denotes the communication cost between the user s i and the group leader. s k Q * denotes all perceived tasks completed by the user in the task cooperative group, Q S i − Q * denotes the number of incomplete task sets in the task cooperative group, and the parameter α ∈ [0, 1] denotes the trade-off between the social cost of the user and the communication cost between the user and the group leader F k The users in Λ S are sorted in nondescending order. The smallest user is selected and added to G k , and removed from F k . When there are no more outstanding tasks or no more neighbors to choose from, the algorithm returns to the user group G k .

Heterogeneous Multitasking Algorithm
In this section, we focus on designing an adjustable bid task allocation (ABTA) algorithm and analyze it theoretically.
ABTA algorithm for heterogeneous multitask assignment. Each user in an MCS system has different characteristics. In other words, they need different ways of remuneration due to their different perceived resources. Traditional DA algorithms [41] can produce stable matches for the universal admission problem, but the algorithm becomes unstable for the heterogeneous and heterogeneous multitask assignment problem in MCS. In addition, users allow each seller to gradually adjust their bids to the buyer in order to win in the competition. In this case, buyers' and sellers' preferences are not fixed in each round. In addition, the number of sellers accepted by each buyer is not predetermined due to the buyer's budget constraints. To solve these problems, we will introduce a task assignment algorithm based on stable matching. Unlike the traditional DA algorithm, sellers have "one chance to choose" and sellers can submit bids multiple times and resubmit the updated bids to previously rejected buyers.
This section uses δ i to denote the seller's s i reduction rate. In other words, each seller s i , as long as the utility is nonnegative, can reduce its bid by δ i after each rejection by the buyer. Assume that p m (i, k)s i , representing the seller, has p 1 (i, k) = p max (i, k), initially set locally by the seller s i , relative to the first round t k of the task m. Since users select the tasks they participate in locally, they are not aware of other people's bids and all interactions take place between local sellers and buyers. In this way, each seller is unaware of everyone else and each buyer is only aware of the bid packages they are interested in. This chapter uses w m (s i ) to denote the set of buyers to whom s i will send bid packages in the m round, and w m (t k ) to denote the set of sellers to whom t k will temporarily accept in the m round. The ABTA algorithm operates as follows.
In the first m round, each seller s i , selects a buyer in w m (s i ) and first calculates c(i, k) and then based on w m (s i ) = {t k |p m (i, k) ≥ c(i, k), ∀t k ∈ T }r(i, k). Then, the calculation is calculated based on q(i, k)r(i, k) and finally s i sends a bid package to each buyer in t k w m (s i ), where the bid package is the user's bid p m (i, k) and perceived quality q(i, k).
After collecting the sellers' bid packages, the buyer t k , selects the appropriate subset of sellers w m (t k ), and solves for the best overall perceived quality using the DP algorithm under the budget constraint, i.e., maximizing their utility. Then, the buyer t k , temporarily accepts the appropriate sellers w m (t k ), and rejects the other sellers.
Upon receipt of buyer's t k ∈ w m (s i ) decision, seller s i has the following two options. If s i is rejected by t k and the current paid p m (i, k) is not less than its cost c(i, k), then the bid for t k will be reduced in the next round, i.e., p m+1 If s i is accepted by t k , or if the current payment p m (i, k) is equal to c(i, k), the bid for t i remains the same, i.e., p m+1 (i, k) = p m (i, k).
Use f lag i = 0 to indicate that the seller's s i bid in this round is the same as the previous round, and vice versa to indicate a different bid. If all users have the same bid as in the m round, the transfer will be terminated at the end of the round, using m ∑ s i ∈S f lag i = 0 to indicate that the transaction is terminated.
If there are changed bids after the m round, i.e., p m+1 (i, k) = p m (i, k), the above process continues in the next round m + 1. The detailed steps of the task assignment algorithm with adjustable bids are described below. The specific implementation steps of the algorithm are shown in the following Algorithm 3.

Algorithm 3: Stable task assignment algorithm with adjustable bids
Step 1: Initialization 1: m = 1, ∀s i ∈ S, t k ∈ T , p m (i, k) = p max (i, k), f lag i = 1 Step 2: Buyer and seller's transaction phase 2: while ∑ s i ∈S f lag i > 0 does 3: for s i ∈ S do 4: first calculate r(i, k) = r(s i ) ∩ r(t k ), then calculate c(i, k) and q(i, k) from r(i, k), then calculate w m (s i ) = {t k | p m (i, k) ≥ c(i, k), ∀t k ∈ T } 5: if w m (s i ) = ∅, then 6: for ∀t k ∈ w m (s i ) do 7: the user s i , sends the solicitation packages p m (i, k) and q(i, k) to the task. t k 8: end for 9: end if 10: end for 11: for t k ∈ T do 12: t k after collecting the bid packets sent by sellers, use w m (t k ) to indicate the set of sellers for the bid packets received at t k use the DP algorithm to select the sellers from w m (t k ) and reject the unselected sellers 13: end for 14: for ∀t k ∈ T , s i ∈ w m (t k ) do 15: if s i , is rejected by t k and p m (i, k) > c(i, k), then 16: According to the ABTA algorithm, after a finite number of rounds, the seller's bid will be accepted or reduced to cost by the buyer, which is the termination condition of the ABTA algorithm. Thus, the algorithm eventually converges in finite time. both buyers and sellers in the ABTA algorithm are individually rational. For each seller s i , since it sends bid packages only to buyers whose perceived cost does not exceed the bid price and whose final payment must not be lower than the cost. Therefore, the seller utility achieved by the proposed algorithm is nonnegative. Second, for each buyer t k , it will accept a set of sellers within its budget in order to maximize its utility U k T (t k , w(t k ), P) in each round. Since the buyer cannot select any user during the matching process, the utility at this point U k T (t k , ∅, P) = 0, the buyer's final utility will not be less than 0. In summary, the algorithm achieves individual rationality for both buyers and sellers.
In this paper, we use a counterfactual to prove the fairness of the algorithm. Given the final matching result W, assume that the seller s i , when the seller s i forms a blocking pair (s i , M) with the buyer set M, then the seller P i has a gain. Then the following two conditions must exist.
w (t k ) is the subset of sellers that t k excludes from w(t k ), and since seller s i was not recruited by t k in the ABTA algorithm, its bid at s i must equal its cost in the last round of at k * c(i, k). In addition, the buyer t k must prefer the seller in w(t k ) to the other sellers. Mathematically, the following result can be obtained.
If the buyer t k , accepts the seller s i 's bid p(i, k), then there must be: Therefore, it is possible to obtain.
where w (t k ) ⊆ w (t k ), can be obtained: Therefore, the matching implemented using this algorithm does not form blocking pairs, and the fairness of the algorithm is proven.

Experimental Settings
In this section, the performance of the proposed algorithm is evaluated by simulating a scenario of an MCS system using a real dataset [42,43] and by simulating candidate users and their social relationships involved in a perception task using the Gowalla dataset. In this case, a perception task can be defined as sensing traffic information or air pollution levels in a specific area, and mobile users can participate in multiple tasks in a certain area. The values of the simulation parameters are summarized in Table 2. The location of the sensing task is randomly generated from a location close to the mobile smart terminal, and the mobile smart terminal s i can participate in the task t k as long as the distance between s i and t k does not exceed a threshold value D max . The distance of the task from the current location of the smart terminal user is recorded and the execution cost c(i, j, k) is set based on the perceived quality criteria provided by the user for each task [5,10]. The initial maximum bid set for each seller is [15,20], which is higher than the task execution cost, to ensure the individual reasonableness of the seller. To ensure that enough multiple users are recruited for each task, the budget for each task is set at [175,275]. The specific parameters are listed below, and all methods were performed on MATLAB 2019a. 15-20 The user s i , participated in the highest bid for the task t k λ i 6-10 Equipment factor

Performance Indicators
For each simulation, examples from the dataset were selected for simulation and the following indicators were compared and analyzed.

1.
Reward/Cost. This indicator ensures nonnegative personal utility for the user by comparing the reward under matched outcomes to the cost of performing the task.

2.
Budget/Total Payment. This indicator ensures that task personalization is not a negative utility by comparing the task budget and its total payment to the user under the task matching outcome.

3.
System Utility (Task Service Quality) with different number of users: this indicator evaluates the performance of the number of users in each algorithm in optimizing the system utility, which is verified by the gap between the algorithm and the system optimal solution. 4.
System Utility (Task Service Quality) with different number of tasks: this indicator evaluates the performance of the number of tasks in each algorithm in terms of optimizing the system utility, which is verified by the gap between the algorithm and the system optimal solution.

Baseline Approaches
For comparison purposes, three comparison algorithms are introduced, namely the algorithm for optimal system efficiency, the ASTA algorithm, and the greedy task assignment (GTA) algorithm.
System Utility-Optimal algorithm: find a match that maximizes the quality of service for the buyer. In this simulation, the system utility-optimal task assignment problem is transformed into a 0-1 integer linear programming problem and solved using MATLAB.
ASTA [44] (approximate alliance stable task allocation, ASTA) algorithm: approximate the alliance stable task allocation algorithm that considers a system model similar to this paper and where the buyer has heterogeneous resource requirements.
GTA [45] greedy algorithm. A bipartite graph is built based on a list of user and task preferences. The GTA algorithm always chooses the match with the highest weight value under budget constraints in the best way and updates the budget of the task for each selection until all edges are matched.
In the ASTA algorithm, the worker makes a matching request to the task in the order of the preference list, and the requested task either accepts the worker directly as the budget allows, or optimizes the current matching result by solving the 0-1 backpack problem. The GTA algorithm, on the other hand, has the longest running time, which is consistent with its time complexity being the highest among the three algorithms. Within all the algorithms, our proposed algorithm has the highest percentage of stable matching pairs, and the GTA algorithm does not take into account the stability of matching.

Complexity Analysis
The grouping mechanism of the GOABTA algorithm is based on leader initialization, and since the computation of the while-loop is at most O(S), its time complexity is O |S| 2 .In Collaborative group selection, the computational overhead of computing the current outstanding task is at most O max Q S i : s i ∈ G k , and the total complexity of the for loop is at most O(|S|· log|S|) for each F k ⊆ S, since there are F k users connected by leader s k . The task assignment algorithm converges in finite time, and the termination condition of the algorithm is reached only after finite rounds of transactions in which the seller's bid will be accepted by the buyer or reduced to cost. Thus, the algorithm eventually converges in finite time and achieves individual rationality for both buyers and sellers.

Personal Rational Analysis
The performance of the proposed algorithm is evaluated in terms of achieving personalization of users and tasks. In the simulation, the sellers s i , i.e., δ i = 1, the number of sellers M = 600 (for selecting users in group social relations), the number of buyers N = 10, and the reduction rate of sellers is set to 1. The final matching result gives the final payoff of the users and their cost to perform the task. As shown in Figure 2, each user ends up with a payoff no less than the cost of completing the task, ensuring a nonnegative utility for each seller. In addition, the final task matching results give the budget for the task and the total cost paid to the users, and as can be seen in Figure 3, the total cost paid to the buyers at the end of the algorithm does not exceed their budget, thus achieving a nonnegative utility for each buyer. That is, the proposed task allocation algorithm ensures the individual rationality of both buyers and sellers.  As can be seen in Figures 2 and 3, the GO-ABTA algorithm always ensures the individual rationality of users and tasks during the matching process. During the matching process, the total payment for the task is always lower than the task budget (the minimum payment for completing the task), and the trend of the total payment curve is the same as the trend of the task budget curve. In grouped social relations, the user's payment is always higher than the cost of performing the task (only the selected user performs the task in the grouping mechanism), and the trend of the payment curve is the same as the trend of the task execution cost curve.
System utility analysis  As can be seen in Figures 2 and 3, the GO-ABTA algorithm always ensures the individual rationality of users and tasks during the matching process. During the matching process, the total payment for the task is always lower than the task budget (the minimum payment for completing the task), and the trend of the total payment curve is the same as the trend of the task budget curve. In grouped social relations, the user's payment is always higher than the cost of performing the task (only the selected user performs the task in the grouping mechanism), and the trend of the payment curve is the same as the trend of the task execution cost curve.

System Utility Analysis
The performance of the proposed algorithm in optimizing the system utility is analyzed. In the simulation, the number of buyers is fixed at 15, while the number of sellers varies from 350 to 950, as shown in Figure 4, and it can be seen that the algorithm in this paper has the smallest gap with the optimal solution of the system. The stability of the system cannot be guaranteed because the optimal solution of the system efficiency only aims at maximizing the utility of buyers and ignores the individual tasks and users' preferences. In the simulation, the number of sellers is fixed at 1200, while the number of buyers varies from 5 to 30, as shown in Figure 5, which shows that the gap between the algorithm in this paper and the system optimal solution is minimized. The simulation results also show that the algorithm outperforms the ASTA algorithm and the GTA algorithm. In addition, it can be seen from the figure that when the number of sellers increases, the utility of buyers increases in all four cases. This is because the more sellers there are, the more buyers can recruit enough sellers to obtain higher utility. Figures 4 and 5 show the advantages of the GO-ABTA algorithm for different numbers of users and tasks. In Figure 4, it is clear that the GO-ABTA algorithm outperforms the GTA algorithm and the ASTA algorithm (the gap between the optimal solution and the system is the smallest), and the task utility increases for all four curves as the number of users increases. From Figure 5, it can be seen that the GO-ABTA algorithm is closest to the gap between the optimal solution and the system, and the task utility under all four curves improves significantly as the number of tasks increases. the main reasons for the best performance of the GO-ABTA algorithm are: (1) the GO-ABTA algorithm achieves buyer and seller after a limited round of transactions, and the seller's offer is accepted or reduced to cost by the buyer, achieving individual rationality; (2) as the number of tasks and users increases, the grouping of users under group social relations brings more budget and more users to choose from, thus increasing the number of interaction rounds and enabling tasks to recruit more compatible users and achieve higher utility.    Figure 4, it is clear that the GO-ABTA algorithm outperforms the GTA algorithm and the ASTA algorithm (the gap between the optimal solution and the system is the smallest), and the task utility increases for all four curves as the number of users increases. From Figure 5, it can be seen that the GO-ABTA algorithm is closest to the gap between the optimal solution and the system, and the task utility under all four curves improves significantly as the number of tasks increases. the main reasons for the best performance of the GO-ABTA algorithm are: (1) the GO-ABTA algorithm achieves buyer and seller after a limited round of transactions, and the seller's offer is accepted or reduced to cost by the buyer, achieving individual rationality; (2) as the number of tasks and users increases, the grouping of users under group social relations brings more budget and more users to choose from, thus increasing the number of interaction rounds and enabling tasks to recruit more compatible users and achieve higher utility.
Therefore, it can be concluded that the GO-ABTA algorithm is superior to the GTA and ASTA algorithms and is closest to the system optimal solution.

Conclusions
With the rapid development of mobile internet and smart devices, mobile crowdsensing has become a widely used data collection method in smart cities, and reasonable task assignment is always essential in mobile crowdsensing. In this paper, an adjustable bidding task assignment method is used to describe the assignment of perceptual tasks in MCS systems. To address the problem of optimizing only the performance of the global system in real mobile groupwise perception scenarios while ignoring user preferences and affecting future user participation, the heterogeneous task assignment problem is further investigated in conjunction with user preferences. In addition, the interaction between task requesters and users is described as a many-to-many matching problem under group social relations by a distributed many-to-many resource transaction model. First, the group selection of users is performed through the grouping mechanism of group leader Therefore, it can be concluded that the GO-ABTA algorithm is superior to the GTA and ASTA algorithms and is closest to the system optimal solution.

Conclusions
With the rapid development of mobile internet and smart devices, mobile crowdsensing has become a widely used data collection method in smart cities, and reasonable task assignment is always essential in mobile crowdsensing. In this paper, an adjustable bidding task assignment method is used to describe the assignment of perceptual tasks in MCS systems. To address the problem of optimizing only the performance of the global system in real mobile groupwise perception scenarios while ignoring user preferences and affecting future user participation, the heterogeneous task assignment problem is further investigated in conjunction with user preferences. In addition, the interaction between task requesters and users is described as a many-to-many matching problem under group social relations by a distributed many-to-many resource transaction model. First, the group selection of users is performed through the grouping mechanism of group leader initialization and group selection, and then the task assignment process is described based on stable matching to complete a stable heterogeneous task assignment algorithm under budget constraints. The simulation results verify the individual rationality, stability and convergence of the GO-ABTA algorithm and compare the effectiveness and superiority with other algorithms. In the future, we will still focus on the direction of task assignment algorithms in complex heterogeneous resource scenarios. We will extend GOABTA through game theory and preference matching to improve task-aware quality, ensure platform revenue and increase user revenue. The research in this paper can be reviewed as a reference for MCS-related research.